package org.example.study2;
import java.io.IOException;
import java.io.PrintWriter;

public class PrintWriterDemo {
    public static void main(String[] args) {
        // 使用 try-with-resources 语句，确保Writer会被自动关闭
        // 创建一个PrintWriter对象，指向文件
        try (PrintWriter writer = new PrintWriter("d:/temp/input.txt")) {
            // 写入文件
            writer.println("Hello World!");
            writer.printf("你好世界！！"); //
            writer.print("这是一行没有换行的文本。");

            // PrintWriter使用了缓冲区，数据不会立即写入磁盘
            // 数据会先被写入缓冲区，在 try 块结束时自动关闭 writer，关闭时会自动刷新缓冲区

        } catch (IOException e) { // 注意：PrintWriter的大多数方法不抛异常，但构造方法可能抛IOException
            System.out.println("创建文件时出错: " + e.getMessage());
        }
        // try-with-resources块结束后，PrintWriter会自动关闭
        // 不需要手动调用close()方法，这由try-with-resources语法自动处理
    }
}